ns16550: Do not re-init active timer on S3 resume.
authorKeir Fraser <keir.fraser@citrix.com>
Mon, 22 Mar 2010 10:24:17 +0000 (10:24 +0000)
committerKeir Fraser <keir.fraser@citrix.com>
Mon, 22 Mar 2010 10:24:17 +0000 (10:24 +0000)
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen/drivers/char/ns16550.c

index f1981a24badc2b1a07d5d2c897baa304dec3dfdc..3aa8e24c537d0cdc07e78c752c1b2aecdbb284ae 100644 (file)
@@ -259,7 +259,9 @@ static void __devinit ns16550_init_postirq(struct serial_port *port)
 
     serial_async_transmit(port);
 
-    init_timer(&uart->timer, ns16550_poll, port, 0);
+    if ( !uart->timer.function )
+        init_timer(&uart->timer, ns16550_poll, port, 0);
+
     /* Calculate time to fill RX FIFO and/or empty TX FIFO for polling. */
     bits = uart->data_bits + uart->stop_bits + !!uart->parity;
     uart->timeout_ms = max_t(